package com.zy.ftplicent.example;

import org.apache.commons.net.ftp.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;

/**
 * Created by Allen on 2017/2/27.
 */
public class UploadDemo {

    public static void main(String[] args) throws IOException {

        FTPClient ftp = new FTPClient();
        ftp.connect("198.10.10.7", 21);// 连接FTP服务器
        // 如果采用默认端口，可以使用ftp.connect(host)的方式直接连接FTP服务器
        ftp.login("dtzxuser", "dtzx1qaz!QAZ");// 登录

        int reply = ftp.getReplyCode();
        if (!FTPReply.isPositiveCompletion(reply)) {
            ftp.disconnect();
            System.out.println("disconnect");
            System.exit(-1);
        }

        String directory = "/DTZX";
//        //更换目录到当前目录
        ftp.changeWorkingDirectory(directory);
//        // 输出当前目录结构
        FTPFile [] files = ftp.listFiles();
        for(FTPFile file : files){
            System.out.println(file.getName());
        }
//
        ftp.enterLocalPassiveMode();// 设置为被动模式
        ftp.setFileType(FTP.BINARY_FILE_TYPE); //设置上传文件的类型为二进制类型
//
        File ufile = new File("E:/hello.txt");
        InputStream stream = new FileInputStream(ufile);
        if(!ftp.storeFile("test01.txt", stream)){
            System.out.println("上传失败！");
        }
//
        stream.close();
//        System.out.println("login");
        ftp.logout();

    }

}
